package com.bdk.middle.order.service;

import com.bdk.middle.common.result.ResultDO;
import com.bdk.middle.order.api.domain.OrderItemDO;
import com.bdk.middle.order.api.query.OrderItemQueryDO;

public interface OrderItemService {

    /**
     * 添加订单项
     * @param domain 订单项DO
     * @return ResultDO
     */
    public ResultDO add(OrderItemDO domain);

    /**
     * 修改订单信息项
     * @param domain 订单项DO
     * @return ResultDO
     */
    public ResultDO edit(OrderItemDO domain);

    /**
     * 获取订单详情项
     * @param id 订单项ID
     * @return ResultDO
     */
    public ResultDO get(String id);


    /**
     * 获取订单详情项
     * @param orderId 订单项ID
     * @return ResultDO
     */
    public ResultDO getByOrderId(String orderId);

    /**
     * 删除订单项
     * @param id 订单项ID
     * @return ResultDO
     */
    public ResultDO remove(String id);

    /**
     * 删除订单项
     * @param orderId 订单项ID
     * @return ResultDO
     */
    public ResultDO removeByOrderId(String orderId);

    /**
     * 查找订单列表分页
     * @param domain 查询DO
     * @return ResultDO
     */
    public ResultDO find(OrderItemQueryDO domain);
}
